package com.order.enums;

import lombok.Getter;

/**
 * 订单状态枚举类
 */
@Getter
public enum OrderStatusEnum {

    // 订单状态：新下单（默认）、已完成、已取消
    NEW(0, "新下单"),
    FINISHED(1, "已完成"),
    CANCEL(2, "已取消");

    // 状态码
    private Integer code;

    // 状态描述
    private String message;

    // 构造方法
    OrderStatusEnum(Integer code, String message) {
        this.code = code;
        this.message = message;
    }

    /**
     * 根据状态码获取对应的枚举实例
     * @param code 状态码
     * @return 对应的订单状态枚举
     */
    public static OrderStatusEnum getOrderStatusEnum(Integer code) {
        for (OrderStatusEnum orderStatusEnum : OrderStatusEnum.values()) {
            if (orderStatusEnum.getCode().equals(code)) {
                return orderStatusEnum;
            }
        }
        return null; // 可根据业务需求抛出异常或返回默认值
    }
}
